<script type="text/javascript">
  import store from './../store'
  // const BASE_OSS_URL = store.getters.config['baseImgUrl'];//全局配置的图片引用地址
  // 定义一些公共的属性和方法
  const TYPE_NORMAL = 0;//无操作
  const TYPE_LINK_SUBJECT = 10;//专题链接
  const TYPE_LINK_ACTIVE = 15;//链接产品
  const TYPE_LINK_CATEGORY = 20;//链接分类
  const TYPE_OTHER_LINK = 50;//外部链接
  //站点状态-start
  const STATUS_NORMAL = 0;//正常状态
  const STATUS_EXPIRATION = 1;//过期状态
  //站点状态-end

  //用户类型-start
  const USER_TYPE_NORMAL = 0;//普通用户
  const USER_TYPE_VIP = 1;//VIP用户
  //用户类型-end
  //店铺类型-start
  const LEVEL_NORMAL=0;//普通店铺
  const LEVEL_VIP=5;//VIP
  const LEVEL_SELF=10;//自营

  //店铺类型-end

  //用户类型-start
  const USER_STATUS_NORMAL = 1;//正常
  const USER_STATUS_BAND = 0;//封禁
  //用户类型-end

  //发货方式-start
  const TRANSPORT_TYPE_QRCODE = 0;//到店二维码核销
  const TRANSPORT_TYPE_EXPRESS= 1;//快递发货
  const TRANSPORT_TYPES = [
    {name: '二维码核销', value: TRANSPORT_TYPE_QRCODE},
    {name: '快递发货', value: TRANSPORT_TYPE_EXPRESS}
  ];
  //发货方式-end
  
  //活动类型-start
  const ACTIVE_TYPE_QG = 0;//抢购
  const ACTIVE_TYPE_QG_XS = 1;//限时抢购
  const ACTIVE_TYPE_KJ = 5;//砍价
  const ACTIVE_TYPE_VIP = 10;//VIP
  const ACTIVE_TYPES = [
    {name:'抢购',value:ACTIVE_TYPE_QG},
    {name:'限时抢购',value:ACTIVE_TYPE_QG_XS},
    {name:'砍价',value:ACTIVE_TYPE_KJ}
    ];
  //活动类型-end
  //支付类型-start
  const PAY_TYPE_ONLINE = 0;//线上支付
  const PAY_TYPE_OFFLINE = 1;//到店支付
  const PAY_TYPES = [
    {name:'线上支付',value:PAY_TYPE_ONLINE},
    {name:'到店支付',value:PAY_TYPE_OFFLINE},
    ];
  //支付类型-end
  //活动状态-start
  const ACTIVE_STATUS_SAVED = 0;//已保存
  const ACTIVE_STATUS_WAIT = 5;//未开始
  const ACTIVE_STATUS_NORMAL = 10;//进行中
  const ACTIVE_STATUS_STOP = 15;//暂停
  const ACTIVE_STATUS_END = 20;//结束
  const ACTIVE_STATUS = [
    {name:'已保存',value:ACTIVE_STATUS_SAVED},
    {name:'未开始',value:ACTIVE_STATUS_WAIT},
    {name:'进行中',value:ACTIVE_STATUS_NORMAL},
    {name:'暂停',value:ACTIVE_STATUS_STOP},
    {name:'结束',value:ACTIVE_STATUS_END},
    ];
  //活动类型-end
 
  //活动显示状态-start
  const ACTIVE_SHOW_NO = 0;//
  const ACTIVE_SHOW_YES = 1;//
  const ACTIVE_SHOWS = [{name:'不显示',value:ACTIVE_SHOW_NO},{name:'显示',value:ACTIVE_SHOW_YES}];//
  //活动显示状态-end



  function commonFun() {
    console.log("公共方法")
  }

  function convertUTCTimeToLocalTime(UTCDateString) {
    if (!UTCDateString) {
      return '-';
    }

    function formatFunc(str) {    //格式化显示
      return str > 9 ? str : '0' + str
    }

    let date2 = new Date(UTCDateString);     //这步是关键
    let year = date2.getFullYear();
    let mon = formatFunc(date2.getMonth() + 1);
    let day = formatFunc(date2.getDate());
    let hour = date2.getHours();
    // let noon = hour >= 12 ? 'PM' : 'AM';
    // hour = hour >= 12 ? hour - 12 : hour;
    // hour = formatFunc(hour);
    let min = formatFunc(date2.getMinutes());

    let dateStr = year + '-' + mon + '-' + day + ' ' + hour + ':' + min;
    return dateStr;
  }
  /**
   * 获取全路径oss文件地址
   * @param orgUrl 相对地址
   * @param small 是否是小图
   * @param icon 是否是图标
   * @returns {string}
   */
  function getUrl(orgUrl,small=false,icon=false) {
    let config = store.getters.config;
    let url = config['baseImgUrl'];
    return url+orgUrl+(small?'!small':'')+(icon?'!icon':'');
  }

  //转换价
  function convertPrice(intPrice) {
    return (intPrice + 0.0) / 100;
  }
  //转换价
  function reconvertPrice(floatPrice) {
    return parseInt((floatPrice * 100)+'');
  }
  //付款状态
  const PAY_STATUS_UN_PAY_ONLINE = 0;//线上未付款
  const PAY_STATUS_PAID_FAILED_ONLINE = 4;//线上付款失败
  const PAY_STATUS_PAID_ONLINE = 5;//线上已付款
  const PAY_STATUS_UN_PAY_OFFLINE = 10;//线下未付款
  const PAY_STATUS_PAID_OFFLINE = 15;//线下已付款
  const PAY_STATUS_WAIT_REFUND = 19;//退款中
  const PAY_STATUS_REFUNDED = 20;//已退款

  //订单状态
  const ORDER_STATUS_NORMAL = 0;//订单的正常状态，未付款前或已付款后都是这个状态，已付款后就是待使用
  const ORDER_STATUS_USED = 5;//已使用AND待评价
  const ORDER_STATUS_CLOSE = 10;//关闭
  const ORDER_STATUS_EXPIRE = 15;//已过期

  //退款类型
  const REFUND_TO_WALLET = 1;//退到余额
  const REFUND_TO_ORIGINAL = 0;//原路退回

  /**
   * //订单类型 0 全部 1未付款 2待使用 3待收货 4待评价5已过期6已退款 10已关闭
   * 获取订单状态
   * @param payStatus 支付状态
   * @param tradeStatus 交易状态
   * @param type 订单类型，实物或虚拟 默认为虚拟物品订单
   * @param returnType 返回值类型，默认返回描述
   */
  export const getOrderStatus = (payStatus,tradeStatus,type=TRANSPORT_TYPE_QRCODE,returnType=0)=>{
    let strStatus = '';
    let status = -1;
    if(payStatus===PAY_STATUS_UN_PAY_ONLINE||payStatus===PAY_STATUS_PAID_FAILED_ONLINE||payStatus===PAY_STATUS_UN_PAY_OFFLINE){
      //未付款下的情况
      if(tradeStatus===ORDER_STATUS_NORMAL){
        strStatus='未付款';
        status=1;
      }else if(tradeStatus===ORDER_STATUS_CLOSE) {
        strStatus='已关闭';
        status=10;
      }
    }else if(payStatus===PAY_STATUS_PAID_ONLINE){
      //已付款下的情况
      if(tradeStatus===ORDER_STATUS_NORMAL){
        strStatus='已付款';
        status=2;
      }else if(tradeStatus===ORDER_STATUS_EXPIRE) {
        strStatus='已过期';
        status=5;
      }else  if(tradeStatus===ORDER_STATUS_USED){
        strStatus='已使用';
        status=4;
      }
    }else if(payStatus===PAY_STATUS_PAID_OFFLINE){
      //线下已付款下的情况
      if(tradeStatus===ORDER_STATUS_USED){
        strStatus='已使用';
        status=4;
      }
    }else if(payStatus===PAY_STATUS_REFUNDED){
      strStatus='已退款';
      status=6;
    } else if(payStatus===PAY_STATUS_WAIT_REFUND){
      status=7;
      strStatus='退款中';
    }

    if(returnType===0){
      return strStatus;
    }
    return {status:status,strStatus:strStatus};
  };

  // 暴露出这些属性和方法
  export default {
    getUrl,
    // BASE_OSS_URL,
    USER_STATUS_NORMAL,
    USER_STATUS_BAND,
    USER_TYPE_NORMAL,
    USER_TYPE_VIP,
    TYPE_NORMAL,
    TYPE_LINK_SUBJECT,
    TYPE_LINK_ACTIVE,
    TYPE_LINK_CATEGORY,
    TYPE_OTHER_LINK,
    STATUS_NORMAL,
    STATUS_EXPIRATION,
    ACTIVE_TYPE_QG,
    ACTIVE_TYPE_QG_XS,
    ACTIVE_TYPE_KJ,
    ACTIVE_TYPE_VIP,
    ACTIVE_TYPES,
    PAY_TYPE_ONLINE,
    PAY_TYPE_OFFLINE,
    PAY_TYPES,
    ACTIVE_STATUS_SAVED,
    ACTIVE_STATUS_WAIT,
    ACTIVE_STATUS_NORMAL,
    ACTIVE_STATUS_STOP,
    ACTIVE_STATUS_END,
    ACTIVE_STATUS,
    ACTIVE_SHOW_NO,
    ACTIVE_SHOW_YES,
    ACTIVE_SHOWS,
    TRANSPORT_TYPES,
    TRANSPORT_TYPE_QRCODE,
    TRANSPORT_TYPE_EXPRESS,
    PAY_STATUS_UN_PAY_ONLINE,
    PAY_STATUS_PAID_FAILED_ONLINE,
    PAY_STATUS_PAID_ONLINE,
    PAY_STATUS_UN_PAY_OFFLINE,
    PAY_STATUS_PAID_OFFLINE,
    PAY_STATUS_WAIT_REFUND,
    PAY_STATUS_REFUNDED,
    ORDER_STATUS_NORMAL,
    ORDER_STATUS_EXPIRE,
    REFUND_TO_WALLET,
    REFUND_TO_ORIGINAL,
    LEVEL_SELF,
    commonFun,
    convertPrice,
    getOrderStatus,
    reconvertPrice,
    convertUTCTimeToLocalTime
  }
</script>
